- 1、本文档共23页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
LINUX实验报告 (800字)
LINUX实验报告 (800字)
本科生实验报告
实验课程 多传感器信息融合技术 学院名称 信息科学与技术学院 专业名称 物联网工程学生姓名 何月明 学生学号 201213060307 指导教师 赖武刚 实验地点 6B607 实验成绩
二〇 14 年 11月二〇 14年12月
题目1.按键控制蜂鸣器增减
一、实验要求。
(1)按键1:启动/停止蜂鸣器。
按键2:增加频率10Hz 按键3:减小频率10Hz按键8:退出程序。
(2)程序初始化完成后,蜂鸣器的默认状态是停止。
二、实验流程图。
三、实验步骤。
首先明白实验的要求,从按键,数据采集去考虑程序的写法。则程序可如下: #include lt;termios.hgt; #include lt;stdio.hgt;
#include lt;fcntl.hgt; #include lt;unistd.hgt; #include lt;stdlib.hgt; #include lt;sys/ioctl.hgt; #include lt;sys/types.hgt; #include lt;sys/stat.hgt;
#define PWM_IOCTL_SET_FREQ #define PWM_IOCTL_STOP #define
ESC_KEY
static int getch(void){
struct termios oldt,newt; int ch; if (!isatty(STDIN_FILENO)) {
fprintf(stderr, quot;this problem terminal\nquot;);
exit(1);
should 1
0x1b be run at a
}
// save terminal setting
if(tcgetattr(STDIN_FILENO, amp;oldt) lt; 0) {
perror(quot;save
the terminal settingquot;);
exit(1); }
// set terminal as need
terminalquot;);
exit(1);}
newt = oldt;
newt.c_lflag amp;= ~( ICANON | ECHO );
if(tcsetattr(STDIN_FILENO,TCSANOW, amp;newt) lt; 0) {
perror(quot;set
ch = getchar(); open_buzzer();
perror(quot;restore the termial settingquot;); // restore termial setting
if(tcsetattr(STDIN_FILENO,TCSANOW,amp;oldt) lt; 0) {
return ch; }
static int fd = -1;
static void close_buzzer(void); static void open_buzzer(void) { fd = open(quot;/dev/pwmquot;, 0); if (fd lt; 0) {
pwm_buzzer devicequot;);
}
// any function exit call will stop the buzzer atexit(close_buzzer);
}
static void close_buzzer(void) {
exit(1);}
perror(quot;open
exit(1);
if (fd gt;= 0) {
ioctl(fd,
PWM_IOCTL_STOP);
2) lt; 0) { }
static void set_buzzer_freq(int freq) {
// this IOCTL command is the key to set frequency int ret = ioctl(fd, PWM_IOCTL_SET_FREQ, freq); if(ret lt; 0) {
perror(quot
您可能关注的文档
- 2016年社区党委述职述廉报告.doc
- 2016年精神文明事迹材料.doc
- 2016年胶州干旱情况对粮食作物的影响调查.doc
- 2016年药店gsp认证整改报告.doc
- 2016年药店整改报告.doc
- 2016年文明申报材料.doc
- 2016最美乡村女教师事迹.doc
- 2016最美家庭事迹范文.doc
- 2016林业站站长述职述廉报告.doc
- 2016药店认证整改报告.doc
- 疫情环境下直播带货助力企业绩效提升了吗--基于小米公司的案例研究.pdf
- DB21_T 2888-2017公共信用信息征集规范.docx
- 智慧平安社区建设体系评价标准 __DB1304_T 353-2021.docx
- DB21_T 2973-2018小型水利工程混凝土施工质量管理规程.docx
- DB21_T 3031-2018北方寒区闸坝混凝土病害诊断、修补与防护技术规程.docx
- 基于消费者需求洞察的市场定位.pptx
- DB21∕T 3163-2019 辽宁省绿色建筑施工图设计评价规程.docx
- DB1501_T 0045-2024古树名木资源调查技术规程 .docx
- DB1309/T 208-2018桑椹设施栽培技术规程.docx
- DB13-T 5388-2021大中型水库管理规程.docx
文档评论(0)