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

 
 
 
Reply to this topicStart new topic
> Может проблема в перключении страниц?
glebka
сообщение Jun 16 2007, 16:53
Сообщение #1


Частый гость
**

Группа: Свой
Сообщений: 199
Регистрация: 22-06-05
Пользователь №: 6 217



После Atmel SAM7 и AVR перешел на С8051F120, и всё :-) пропало, в проекте подключен LED диcплей на портах P5, P6.Все попытки просто шевелить ногами для контроля LED проходят на УРА , как только делаю это в программе инициализации дисплея с портами непонятно что творится, появляютя левые сигналы, самостоятельно процессор что-то сам делает по всем ногам порта ;-).
Вопрос может это проблема переключения страниц SFR? По идее, смена страницы должна осуществлятся автоматически, при обращение к регистрам портов.
Думаю что -то неправильно со мной поэтому сильно не пинайте. Даташит прочитан, но боюсь, я ещё не до конца понимаю как всё работает в комплексе.
Исходный код , если кому будет интересно.

//OLED PINS
sbit OLED_CS = P5^0;
sbit OLED_RESET = P5^1;
sbit OLED_DC = P5^2;
sbit OLED_WR = P5^3;
sbit OLED_RD = P5^4;
sbit OLED_DATA0 = P5^5;
sbit OLED_DATA1 = P5^6;
sbit OLED_DATA2 = P5^7;
sbit OLED_DATA3 = P6^0;
sbit OLED_DATA4 = P6^1;
sbit OLED_DATA5 = P6^2;
sbit OLED_DATA6 = P6^3;
sbit OLED_DATA7 = P6^4;

#define OLED_CS_HIGH OLED_CS = 1; //OLED_CS = 1;
#define OLED_CS_LOW OLED_CS = 0;
#define OLED_DC_HIGH OLED_DC = 1;
#define OLED_DC_LOW OLED_DC = 0;
#define OLED_WR_HIGH OLED_WR = 1;
#define OLED_WR_LOW OLED_WR = 0;

#define OLED_DATA7_ON OLED_DATA7 = 1;
#define OLED_DATA7_OFF OLED_DATA7 = 0;


//----------------------------------------------------------------------
//
// Name: OLED_Set_Value
// Description:
//
//----------------------------------------------------------------------
void OLED_Set_Value(unsigned char value)
{


// The OLED's data control lines are connected to:
// DataBus (LCD): 7 6 5 4 3 2 1 0
// PORTOUT (Micro): P6.4 P6.3 P6.2 P6.1 P6.0 P5.7 P5.6 P5.5

P6 = (P6&0xE0)|(value>>3);
P5 = (P5&0x1F)|(value<<4);

}

//----------------------------------------------------------------------
//
// Name: OLED_WriteCommand
// Description:
//
//----------------------------------------------------------------------
void OLED_WriteCommand(unsigned char command )
{

OLED_DC_LOW;
OLED_CS_LOW;
Delayms(5);

OLED_Set_Value(command);
Delayms(5);

OLED_WR_LOW;
Delay(1);
OLED_WR_HIGH;
Delay(1);
OLED_CS = 1;
Delay(5);
}
Go to the top of the page
 
+Quote Post
AndreyS
сообщение Jun 16 2007, 20:29
Сообщение #2


Местный
***

Группа: Участник
Сообщений: 235
Регистрация: 28-01-05
Из: Санкт-Петербург
Пользователь №: 2 276



Добрый день.

Вы даташит ведь внимательно читали. wink.gif Или все еще верите в чудеса??? Странички сами не переключаются при выборе порта.

Удачи.


--------------------
Удачи.
Go to the top of the page
 
+Quote Post
glebka
сообщение Jun 17 2007, 08:24
Сообщение #3


Частый гость
**

Группа: Свой
Сообщений: 199
Регистрация: 22-06-05
Пользователь №: 6 217



Спасибо, думал я чего -то не так понял, что не мог поверить, что для простого дерганья ногами надо так напрягатся smile.gif .Ничего , победим. smile.gifБлагодарю.Новый процессор, новые фишки smile.gif .
Go to the top of the page
 
+Quote Post
-JonnS-
сообщение Jun 17 2007, 14:57
Сообщение #4


Участник
*

Группа: Участник
Сообщений: 72
Регистрация: 7-05-07
Из: Болгария
Пользователь №: 27 577



Чтоб облекчить себе жизнь при конфигурации МК попробуте порога от Silabsa:
Silabs config2.
Могу скинуть и мой модуль LCD (работаю с C8051F410) если нужно.
Go to the top of the page
 
+Quote Post
Волощенко
сообщение Jun 18 2007, 06:40
Сообщение #5


Местный
***

Группа: Свой
Сообщений: 347
Регистрация: 16-02-06
Из: г.Николаев, Украина
Пользователь №: 14 377



Определите режимы выходных портов: либо как open-drain, либо как push -pull. Это важная фишка для SiLabs контроллеров. Используйте также Configuration Wizard 2 (см.предыдущий пост).
А С8051F120 очень послушный, удачи.
Go to the top of the page
 
+Quote Post

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

 


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


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