STM32+I2C+LCD1602+SPL

Кто любит RISC в жизни, заходим, не стесняемся.
Ответить
Аватара пользователя
bezzabotna
Встал на лапы
Сообщения: 134
Зарегистрирован: Пн ноя 07, 2016 12:14:14

STM32+I2C+LCD1602+SPL

Сообщение bezzabotna »

Здравствуйте. Нахожусь в процессе изучения этого замечательного семейства микроконтроллеров и в принципе программирования мк. Как правило, по большинству тем есть замечательные уроки, но вот незадача, по вышеобозначенной связке информации мало, и она представляет из себя либо куски кода, где "всем итак все понятно" и ничего не объясняется, кроме каких-то тонкостей, либо "уроки" по HAL, где "сгенерируем код в cube,вот этот кусок кода отредактируем так, это заменим на это, тут выпишем эти строчки и все готово! Вы восхитительный программист!", ну и уроки по ардуино, для которой этот дисплей с преобразователем существует.
Изображение
Новичку(такому как я) проблематично разом охватить и дисплей и i2c разом. Конечно, есть замечательные уроки по тому и по другому,прочитаны, вроде все ок, доступно и понятно, но как-то все это вместе не вяжется, хотя вроде бы понимаешь, что ни тут ни там ничего такого сложного и нет. Трудно подступиться что ли. Поэтому прошу помощи. Может кто-нибудь хотя бы алгоритм поможет создать для дисплея с этим интерфейсом. Для начала просто вывести текст. Может кусок кода с пояснениями(желательно в SPL). а может кто скинет нормальный подробный урок, который был мной пропущен. А я по мере изучения буду выкидывать сюда информацию по теме. Может в будущем кому-то тоже поможет. Спасибо!
Я конечно все понимаю, но этого я не понимаю.
Реклама
Аватара пользователя
bezzabotna
Встал на лапы
Сообщения: 134
Зарегистрирован: Пн ноя 07, 2016 12:14:14

Re: STM32+I2C+LCD1602+SPL

Сообщение bezzabotna »

Задачу решила
Нужно подключить данные библиотеки и можно написать что-нибудь вроде:

Код: Выделить всё

int main(void)
{
	
  lcd_i2c_config((adress<<1) & 0xfe);
	lcd_i2c_init(1, 2, LCD_5x8DOTS);

  lcd_i2c_clear();

  lcd_i2c_setCursor(1,1); 
	sprintf (str, "%s%d",  "Frequency: ", 10000); 
	sprintf (str, "%2d",  10); 
	lcd_i2c_print(str, 2);
  delay_ms(100);
}

Надеюсь кому пригодится :wink:
Вложения
led_i2c.c
(8.48 КБ) 1107 скачиваний
i2c.c
(4.75 КБ) 1007 скачиваний
led_i2c.h
(3.88 КБ) 858 скачиваний
i2c.h
(1.53 КБ) 1063 скачивания
Я конечно все понимаю, но этого я не понимаю.
Реклама
Ответить

Вернуться в «ARM»