I.Max283开发板通过Qt实现Led的开关
首先说明我是Linux、Qt的小白,示例中可能会存在不严谨的地方,欢迎大家给我指出。当初在学习linux的时候,想实现led的开关,在网上找了看了几天都没有找到一个完整的例子,只能自己慢慢摸索,过程非常痛苦,很庆幸期间得到了很多好心人的帮助,所以写一个例程,希望对后人有所帮助。一、硬件1、操作的是283APDemo板子上的LED1,对应得GPIO是GPIO-P3.26
二、软件
1、Qt用的是Zlg官方的Qt4.7.3
以下是代码:
------------------MainWindow.cpp-------------------------
#define DefaultLedName "/dev/gpio-P3.26"//可以根据硬件进行修改
void MainWindow::show(void)
{
qint64 result;
LedInit();
result = LedWrite(LED_ON);
qDebug() << result;
ledFile->close();
}
bool MainWindow::LedInit(void)
{
ledFile = new QFile(DefaultLedName);
if(!ledFile->open(QIODevice::ReadWrite|QFile::Truncate))
{
qDebug() << "open led file error";
return false;
}
else
{
qDebug() << "open led file sucess";
return true;
}
}
qint64MainWindow::LedWrite(char cmd)
{
char wcmd = cmd;
qDebug() << wcmd;
return (ledFile->write(&wcmd),1);
}
------------------MainWindow.h-------------------------
#include <QObject>
#include <QDebug>
#include <QTimer>
#include <QFile>
class MainWindow : public QObject
{
Q_OBJECT
enum LedCmd
{
LED_ON = '0',
LED_OFF = '1',
};
public:
explicit MainWindow(QObject *parent = 0);
~MainWindow();
void show(void);
bool LedInit(void);
qint64 LedWrite(char cmd);
private:
QFile* ledFile;
signals:
public slots:
};
想问下LZ,有没有IMX283的裸奔例程啊 1328616904 发表于 2016-4-26 14:03
想问下LZ,有没有IMX283的裸奔例程啊
没有呢,学习linux Baldwin 发表于 2016-4-26 14:41
没有呢,学习linux
哎 我就想和2440似的 跑跑裸机再上操作系统 LZ用的什么开发工具? 对于linux 一直观望中{:sad:} fengyunyu 发表于 2016-4-26 15:37
LZ用的什么开发工具?
Qtcreaor+Qt4.7.3
w282529350 发表于 2016-4-26 17:17
对于linux 一直观望中
我也刚学不久,痛苦中 我也刚学IMX283的板子也在看Qt,我现在比较迷茫的是我一直看QT的话那不是一直要搞C++了,基本跟linux底层无关了? 竹叶听筝 发表于 2016-4-27 00:00
我也刚学IMX283的板子也在看Qt,我现在比较迷茫的是我一直看QT的话那不是一直要搞C++了,基本跟linux底层无 ...
Qt就是c++啊,我个人觉得linux底层会被大公司做的越来越完善,一般人都是做应用了{:tongue:} 我一直在找一个QT点LED的程序,感谢楼主的贡献! louwenyan 发表于 2016-4-27 09:42
我一直在找一个QT点LED的程序,感谢楼主的贡献!
以前自己学的时候因为没得参考别提多痛苦了{:cry:}
页:
[1]