当前位置: 技术问答>linux和unix
Mini2440 运行PWM程序出现的问题
来源: 互联网 发布时间:2017-05-16
本文导语: 想用Mini2440运行一个PWM控制蜂鸣器的程序,程序是从书上弄来的,源码放在后面。 然后在mini2440板子上运行的时候,提示open buzzer:device or resource busy。 如果通过secureCRT运行,则主程序前三行提示打出之后就无法继...
想用Mini2440运行一个PWM控制蜂鸣器的程序,程序是从书上弄来的,源码放在后面。
然后在mini2440板子上运行的时候,提示open buzzer:device or resource busy。
如果通过secureCRT运行,则主程序前三行提示打出之后就无法继续运行下去,请问该怎么解决呢?
谢谢。
源码如下:
#include //标准输入输出定义
#include //POSIX终端控制定义
#include //Unix 标准函数定义
#include //标准函数库定义
#define PWM_IOCTL_SET_FREQ 1
#define PWM_IOCTL_STOP 2
#define ESC_KEY 0x1b //定义ESC_KEY 为ESC按键的键值
static int getch(void) //定义函数在终端上获得输入,并把输入的量(int)返回
{
struct termios oldt,newt; //终端结构体struct termios
int ch;
if (!isatty(STDIN_FILENO)) { //判断串口是否与标准输入相连
fprintf(stderr, "this problem should be run at a terminaln");
exit(1);
}
// save terminal setting
if(tcgetattr(STDIN_FILENO, &oldt)
然后在mini2440板子上运行的时候,提示open buzzer:device or resource busy。
如果通过secureCRT运行,则主程序前三行提示打出之后就无法继续运行下去,请问该怎么解决呢?
谢谢。
源码如下:
#include //标准输入输出定义
#include //POSIX终端控制定义
#include //Unix 标准函数定义
#include //标准函数库定义
#define PWM_IOCTL_SET_FREQ 1
#define PWM_IOCTL_STOP 2
#define ESC_KEY 0x1b //定义ESC_KEY 为ESC按键的键值
static int getch(void) //定义函数在终端上获得输入,并把输入的量(int)返回
{
struct termios oldt,newt; //终端结构体struct termios
int ch;
if (!isatty(STDIN_FILENO)) { //判断串口是否与标准输入相连
fprintf(stderr, "this problem should be run at a terminaln");
exit(1);
}
// save terminal setting
if(tcgetattr(STDIN_FILENO, &oldt)