Снова подрыгаем светодиодом, на этот раз красиво через GUI с кнопочками.

Медленно но верно дело двигается, постепенно подбираюсь к моменту, когда уже начну пилить какие то полноценные проекты на raspberry. Итак, до сих пор я использовал консольные приложения, хоть это и хорошо, но иногда все таки с гуйней удобнее. Ознакомившись вариантами, доступными для малины, долго сомневался, ибо хочется попробовать и gtk и wxwidget, но таки на текущий момент нужен был быстрый результат, поэтому Qt.

Честно говоря, в сети гуляет много пугающих гуайдов, но таки процесс установки оказался довольно прост

sudo apt-get install qt5-default
sudo apt-get install qtcreator

Собственно на этом установка закончена. Далее заходим в
Tools — Options — Build & Run — Compilers
Там добавляем путь до компилятора /usr/bin/arm-linux-gnueabihf-gcc-4.8 и отладчика /usr/bin/gdb

Все можно пилить свои приложения. Надо отметить, что на Raspberry Pi Model B, процесс компиляции да и работы в целом нельзя назвать комфортным, компиляция пустого проекта заняла почти 30 сек, так что это скорее пригодно для академического интереса.

И как повелось в последних статьях, нужно обязательно помигать светодиодом. Когда то до этого я уже тестил wiringPi, поэтому для разнообразия решил зачекать либу bcm2835. Юзать ее просто. Скачиваем архив с полезняшками.

wget http://www.airspayce.com/mikem/bcm2835/bcm2835-1.51.tar.gz

Далее распаковываем архив, компилим и устанавливаем.

tar zxvf bcm2835-1.51.tar.gz
cd bcm2835-1.xx
./configure
make
sudo make check
sudo make install

После этого создаем проект и добавляем на форму 2 кнопки включить и выключить. Добавляем библиотеку и обработчики кнопок — включить и выключить светодиод.

2017-01-22-150036_1024x768_scrot

#include "mainwindow.h"
#include "ui_mainwindow.h"
#include "bcm2835.h"
 
MainWindow::MainWindow(QWidget *parent) :
    QMainWindow(parent),
    ui(new Ui::MainWindow)
{
    bcm2835_init();
    bcm2835_gpio_fsel(RPI_GPIO_P1_11, BCM2835_GPIO_FSEL_OUTP);
    ui->setupUi(this);
}
 
MainWindow::~MainWindow()
{
    delete ui;
}
 
void MainWindow::on_pushButton_clicked()
{
    bcm2835_gpio_write(RPI_GPIO_P1_11, HIGH);
}
 
void MainWindow::on_pushButton_2_clicked()
{
    bcm2835_gpio_write(RPI_GPIO_P1_11, LOW);
}

В итоге все сходу завелось без гемора, светодиод включается выключается. Пояснять в общем то особо нечего, кроме номеров светодиодов. Они здесь соответствуют распиновке на разъеме, что в принципе как по мне не удобно, ибо нужно дрыгать 17 ногой, а на разъеме она 11, неудобно.
2017-01-22-145701_1024x768_scrot

2 комментария: Установка Qt на Raspberry Pi. Использование библиотеки BCM2835

  • А нельзя подетальнее по поводу «Там добавляем путь до компилятора /usr/bin/arm-linux-gnueabihf-gcc-4.8 и отладчика /usr/bin/gdb»
    Пробовал разные варианты, все равно пишет:
    Error while building/deploying project untitled (kit: Desktop)
    When executing step «qmake»

  • Иногда ошибку qmake вызывает не правильно выбранная целевая платформа, должно быть:
    Device type: Local PC если такой нет нужно заливать образ системы заново и в строгой последовательности:

    sudo apt-get install qt5-default
    sudo apt-get install qtcreator

    Если дело в отсутствии отладчика или компилятора его можно установить в менеджере пакетов например gdb можно найти в поиске.

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *

Последние комментарии
  • Загрузка...
Счетчик
Яндекс.Метрика