В общем есть задание, Написать программу для управление светодиодом(зажечь, потушить, мигать и всё похожее). Можно конечно найти программку уже готовую, точнее я уже нашёл и проверил что так сделать можно. Теперь осталось написать программу, хотя бы самую простейшую, развить её будет довольно просто. Всё что не пытался делать никак не получается :-( .
Язык: C++
Компилятор: MinGW/GCC (Dev-C++)
Пробовал по всякому разному.. например через <windows.h>, а точнее CreateFile->WriteFile, программа пишет что всё норм, записывает, но на выходах как было везде H напряжение, так и осталось.
Начал заново, взял исходный код с просторов интернета, немного переписал под gcc. Код компилируется, программа запускается, но вылетает с ошибкой.
Может кто может помочь?
Язык: C++
Компилятор: MinGW/GCC (Dev-C++)
Пробовал по всякому разному.. например через <windows.h>, а точнее CreateFile->WriteFile, программа пишет что всё норм, записывает, но на выходах как было везде H напряжение, так и осталось.
Начал заново, взял исходный код с просторов интернета, немного переписал под gcc. Код компилируется, программа запускается, но вылетает с ошибкой.
Может кто может помочь?
Код
#include <iostream>
#include <windows.h>
//#include <stdbool.h>
void doLight(unsigned char s){
asm(
"movl $0x378,%%edx;"
"movb %0,%%al;"
"outb %%al,%%dx;"
:
:"r"(s)
// :"edx","al"
);
}
int main(){
while(1){
doLight(1);
std::cout<<"Light On!"<<std::endl;
system("pause");
doLight(0);
std::cout<<"Light Off!"<<std::endl;
system("pause");
}
return 0;
}
#include <windows.h>
//#include <stdbool.h>
void doLight(unsigned char s){
asm(
"movl $0x378,%%edx;"
"movb %0,%%al;"
"outb %%al,%%dx;"
:
:"r"(s)
// :"edx","al"
);
}
int main(){
while(1){
doLight(1);
std::cout<<"Light On!"<<std::endl;
system("pause");
doLight(0);
std::cout<<"Light Off!"<<std::endl;
system("pause");
}
return 0;
}