Easyelectronics.ru

Электроника для всех
Текущее время: 25 авг 2019, 19:01

Часовой пояс: UTC + 5 часов



JLCPCB – Прототипы печатных плат за $2/10pcs (Любой цвет!)
Крупнейший производитель печатных плат и прототипов. Более 600000 клиентов и свыше 10000 заказов в день!
Получите скидку на почтовую отправку при первом заказе в JLCPCB!

Начать новую тему Ответить на тему  [ Сообщений: 128 ]  На страницу Пред.  1, 2, 3, 4, 5, 6  След.
Автор Сообщение
 Заголовок сообщения: Re: STM32 и LS020 (L2F50)
СообщениеДобавлено: 23 авг 2012, 10:52 
Старожил

Зарегистрирован: 27 сен 2010, 00:51
Сообщения: 421
leowka писал(а):
dosikus писал(а):
Код:
        SPI1->DR = dat;                     
        while (!(SPI1->SR & SPI_SR_RXNE));

.

Вы перепутали, этот бит относится к буферу приема, у меня там правильно.


В том то и дело , что ничего не напутано ... :))))))))
И проверять надо именно RXNE .


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: STM32 и LS020 (L2F50)
СообщениеДобавлено: 23 авг 2012, 10:53 
Заглядывает иногда

Зарегистрирован: 22 авг 2012, 13:15
Сообщения: 45
leowka писал(а):
Вы перепутали, этот бит относится к буферу приема, у меня там правильно.


Перепуталм вы... а не dosikus...


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: STM32 и LS020 (L2F50)
СообщениеДобавлено: 23 авг 2012, 11:04 
Только пришел

Зарегистрирован: 22 авг 2012, 17:09
Сообщения: 12
Эм, ну как так :) из даташита:
Bit 1 TXE: Transmit buffer empty
0: Tx buffer not empty
1: Tx buffer empty
Bit 0 RXNE: Receive buffer not empty
0: Rx buffer empty
1: Rx buffer not empty
Да и при отладке видно, что RXNE флаг молчит, а TXE меняется.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: STM32 и LS020 (L2F50)
СообщениеДобавлено: 23 авг 2012, 11:18 
Старожил

Зарегистрирован: 27 сен 2010, 00:51
Сообщения: 421
Ну а просто поверить на слово и проверить ? :))))


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: STM32 и LS020 (L2F50)
СообщениеДобавлено: 23 авг 2012, 11:37 
Только пришел

Зарегистрирован: 22 авг 2012, 17:09
Сообщения: 12
Проверил, уходит в зацикливание на этой строке, ну собсно, что и логично.

------
Блин ржака :)) внес пачку изменений, заработал! стал убирать изменения по одному, перестал работать, вернул все, когда работал и уже не работает :)))))))


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: STM32 и LS020 (L2F50)
СообщениеДобавлено: 23 авг 2012, 12:23 
Заглядывает иногда

Зарегистрирован: 22 авг 2012, 13:15
Сообщения: 45
leowka писал(а):
Да и при отладке видно, что RXNE флаг молчит, а TXE меняется.

Доверяем резиновым женщинам??? ))))))))))
Это же бубле-гум-SPI... ))))))
Если проверяете готовность перед передачей - проверяем TXE, потом передаём...
Если проверяете конец передачи или факт приёма данных - передаём, потом проверяем RXNE...
Не поверите... но во многих случаях можно обходиться и без всех этих флагов... ))))))


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: STM32 и LS020 (L2F50)
СообщениеДобавлено: 23 авг 2012, 12:34 
Старожил

Зарегистрирован: 27 сен 2010, 00:51
Сообщения: 421
leowka писал(а):
Проверил, уходит в зацикливание на этой строке, ну собсно, что и логично.


Логично что ?
Буфер пуст - это не окончание передачи однако ...
И если у вас циклится , может "дело не в бобине " ? :))))))))


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: STM32 и LS020 (L2F50)
СообщениеДобавлено: 23 авг 2012, 12:49 
Заглядывает иногда

Зарегистрирован: 22 авг 2012, 13:15
Сообщения: 45
leowka писал(а):
Проверил, уходит в зацикливание на этой строке, ну собсно, что и логично.

Логично то, что если используете RXNE, то его ещё и сбрасывать надо... вычитывая SPI1->DR ... ))))


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: STM32 и LS020 (L2F50)
СообщениеДобавлено: 23 авг 2012, 12:56 
Старожил

Зарегистрирован: 27 сен 2010, 00:51
Сообщения: 421
kuvaldo писал(а):
Логично то, что если используете RXNE, то его ещё и сбрасывать надо... вычитывая SPI1->DR ... ))))


Гы... точно . Посмотрел счас, у него же только передача сделана...
Вот пробуй...
Код:
uint8_t Spi_send (uint8_t data)
      {
     
        SPI1->DR = data;                   
        while (!(SPI1->SR & SPI_SR_RXNE));     
       
        return (SPI1->DR);             
      }


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: STM32 и LS020 (L2F50)
СообщениеДобавлено: 23 авг 2012, 13:18 
Только пришел

Зарегистрирован: 22 авг 2012, 17:09
Сообщения: 12
моя твоя не понимать :) ЗАЧЕМ использовать RXNE, если:
1) Дисплей не имеет обратной связи соотв физически MISO не подключен, и как буфер приема будет наполнятся, чтобы флаг RXNE установился?
2) Камень настроен на 1-проводной SPI,а именно только передачу:
SPI1->CR1 |= SPI_CR1_BIDIOE;
SPI1->CR1 |=SPI_CR1_BIDIMODE;
В итоге у меня RXNE всегда в нуле, соотв в строке while (!(SPI1->SR & SPI_SR_RXNE)); программа зацикливается, ну а на глаз дисплей не инициализируется.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: STM32 и LS020 (L2F50)
СообщениеДобавлено: 23 авг 2012, 13:33 
Старожил

Зарегистрирован: 27 сен 2010, 00:51
Сообщения: 421
leowka, вам шашечки или ехать ?
Инициализируйте SPI как надо, а не как захочется ...
SPI1->CR1 |= SPI_CR1_MSTR|SPI_CR1_SSI | SPI_CR1_SSM| SPI_CR1_SPE;


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: STM32 и LS020 (L2F50)
СообщениеДобавлено: 23 авг 2012, 14:01 
Заглядывает иногда

Зарегистрирован: 22 авг 2012, 13:15
Сообщения: 45
leowka писал(а):
моя твоя не понимать :) ЗАЧЕМ использовать RXNE,

Патамушта перед поднятием CS транзакция должна быть полной...
А TXE только показывает, что можно заталкивать очередные данные... но не окончание передачи...
Цитата:
1) Дисплей не имеет обратной связи соотв физически MISO не подключен, и как буфер приема будет наполнятся, чтобы флаг RXNE установился?

Как работает SPI знаете???
Приём осуществляется одновременно с передачей... и это от вас никак не зависит...
Другое дело... нужны вам принятые данные или нет...
Цитата:
2) Камень настроен на 1-проводной SPI,а именно только передачу:
SPI1->CR1 |= SPI_CR1_BIDIOE;
SPI1->CR1 |=SPI_CR1_BIDIMODE;

Это и даром не нужно...
Цитата:

В итоге у меня RXNE всегда в нуле, соотв в строке while (!(SPI1->SR & SPI_SR_RXNE)); программа зацикливается, ну а на глаз дисплей не инициализируется.

Не удивляюсь... ))))


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: STM32 и LS020 (L2F50)
СообщениеДобавлено: 23 авг 2012, 14:35 
Только пришел

Зарегистрирован: 22 авг 2012, 17:09
Сообщения: 12
kuvaldo писал(а):
Патамушта перед поднятием CS транзакция должна быть полной...
А TXE только показывает, что можно заталкивать очередные данные... но не окончание передачи...

Согласен :) не подумал про CS, теперь вник :) У меня походу проводки разболтались, оживить больше не получается дисплей, продолжу вечером.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: STM32 и LS020 (L2F50)
СообщениеДобавлено: 23 авг 2012, 15:00 
Старожил

Зарегистрирован: 27 сен 2010, 00:51
Сообщения: 421
leowka, только что подтыкнул LS020 .Подправил немного и все запустилось .
А вот L2F50 последний куда то испарился .


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: STM32 и LS020 (L2F50)
СообщениеДобавлено: 23 авг 2012, 15:21 
Только пришел

Зарегистрирован: 22 авг 2012, 17:09
Сообщения: 12
Жаль что испарился :)
Я увидел текст на дисплее после таких правок, который внес в исходники, которые я в архиве давал.
В массиве изменил значение, выделено черным :
static const uint8_t gcp64_0[29] =
{0x11,0x27,0x3C,0x4C,0x5D,0x6C,0x78,0x84,0x90,0x99,0xA2,0xAA,0xB2,0xBA,
0xC0,0xC7,0xCC,0xD2,0xD7,0xDC,0xE0,0xE4,0xE8,0xED,0xF0,0xF4,0xF7,0xFB,
0xFE};
Исправил инициализацию, забыв передернуть CS после команды DATCTL:
Код:
 
  lcd_cmd(DATCTL);
  lcd_dat0(0x2A);  // 0x2A=565 mode, 0x0A=666mode, 0x3A=444mode                              
   CSHi;
   __NOP();
        CSLow;

Порадовался и сломал все, неизвестным макаром :) Терь вот надеюсь, что провод перегнулся где-нить, прозвоню вечером (грех на CS, если его выдернуть, то мусор на экране тоже появляется)


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: STM32 и LS020 (L2F50)
СообщениеДобавлено: 24 авг 2012, 14:49 
Только пришел

Зарегистрирован: 22 авг 2012, 17:09
Сообщения: 12
В общем хз, глюкавый дисплей у меня походу, все провода были в норме. Выдернул С60 дисплей с сотового на контроллере LPH8731, переписал инициализацию, и все норм выводит, буду его пока мучить, всем спасибо за помощь :)


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: STM32 и LS020 (L2F50)
СообщениеДобавлено: 24 авг 2012, 16:30 
Старожил

Зарегистрирован: 27 сен 2010, 00:51
Сообщения: 421
leowka писал(а):
В общем хз, глюкавый дисплей у меня походу, все провода были в норме.


У L2F50 два питания . Про это не забыли ?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: STM32 и LS020 (L2F50)
СообщениеДобавлено: 24 авг 2012, 17:34 
Только пришел

Зарегистрирован: 22 авг 2012, 17:09
Сообщения: 12
dosikus писал(а):
У L2F50 два питания . Про это не забыли ?

Я через диод от основного запитал, на основе было 3 вольта, а после диода около 2.2 вольта.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: STM32 и LS020 (L2F50)
СообщениеДобавлено: 24 авг 2012, 17:36 
Старожил

Зарегистрирован: 27 сен 2010, 00:51
Сообщения: 421
Попробуйте на прямую . У меня так и было сделано.
Может не хватает напряжения на память ...


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: STM32 и LS020 (L2F50)
СообщениеДобавлено: 27 авг 2012, 15:09 
Только пришел

Зарегистрирован: 22 авг 2012, 17:09
Сообщения: 12
Нет, увы, не помогло.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: STM32 и LS020 (L2F50)
СообщениеДобавлено: 27 авг 2012, 23:05 
Старожил

Зарегистрирован: 27 сен 2010, 00:51
Сообщения: 421
leowka писал(а):
Нет, увы, не помогло.

Обещались на неделе притащить L2F50.
Если очень надо, могу поиздеваться над дисплеем ...


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: STM32 и LS020 (L2F50)
СообщениеДобавлено: 28 авг 2012, 17:26 
Только пришел

Зарегистрирован: 22 авг 2012, 17:09
Сообщения: 12
Если будет время, то потестируйте мой проект, выкладываю со всеми правками, вдруг где-то упустил что-нить.
PC.1 - CS, PC.2 - RST, PC.3 - RS, PA.5 - CLK, PA.7 - DATA


Вложения:
Dsicovery_S65_.rar [100.15 Кб]
Скачиваний: 280
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: STM32 и LS020 (L2F50)
СообщениеДобавлено: 30 сен 2012, 22:39 
Здравствуйте!

Зарегистрирован: 30 сен 2012, 22:11
Сообщения: 3
Не получаеться запустить дисплей на STM32F4Discovery... помогите пожалуйста. уже месяц мучаюсь (((
http://file.qip.ru/file/qm5AVGlj/ls020_2.html - вот код.
PA1- RS
PA2- RST
PA3- CS
PA5- SCK
PA7- MOSI
проверял правильность передачи соеденив моси и мисо - все ОК. настройка частоты - главная 162МГц, шина СПИ - 82 МГц... Дилей работает нормально... брал с рабочего проэкта на АВР... дисплей 100% рабочий ... где лажа не понимаю.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: STM32 и LS020 (L2F50)
СообщениеДобавлено: 30 сен 2012, 23:55 
Старожил

Зарегистрирован: 11 сен 2012, 11:19
Сообщения: 5622
Dorian Gray писал(а):
шина СПИ - 82 МГц.

Не слишком ли?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: STM32 и LS020 (L2F50)
СообщениеДобавлено: 01 окт 2012, 00:33 
Здравствуйте!

Зарегистрирован: 30 сен 2012, 22:11
Сообщения: 3
dosikus_2 писал(а):
Dorian Gray писал(а):
шина СПИ - 82 МГц.

Не слишком ли?

имелось в виду шина на которой сидит SPI1 - APB2 - ее максимальная частота 82 МГц... а делитель СПИ стоит на 82/32 МГц... ставил 82/8, всеравно не работает. У дисплея 13 МГц
Еще такой вопрос - в пошаговой отладке должны генериться импульсы Клока ?


Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 128 ]  На страницу Пред.  1, 2, 3, 4, 5, 6  След.

Часовой пояс: UTC + 5 часов


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  

Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
Русская поддержка phpBB