- 博客(21)
- 收藏
- 关注
原创 VC学习笔记8INI文件操作
INI文件用于保存变量由节名,键名和键值组成WritePrivateProfileString(section,key,val,"c:\\setting.ini"); //写ini文件,section为节名,key,val分别为键名和键值,储存至后面路径,他们都是CString类型下面是读取CString section;char *key[MAX_PATH]={0};
2015-07-30 22:42:52 568
原创 VC学习笔记7文件操作
在MFC中用CFile类来进行文件读写CFile file; //创建文件类file.Open("xx.txt",CFile::modeCreate|CFile::modeReadWrite); //创建文件以读写方式打开file.Write("lalala",6); //写文件file.Colse(); //关闭要读的话unsigned char buf[MAX];
2015-07-30 21:47:56 506
原创 VC学习笔记6音频处理
音频处理首先在资源视图右击导入音频资源,记下ID为IDR_BWAVE在视图类的源文件中需要导入库,该库为windows多媒体操作的接口#include"Mmsystem.h" #pragma comment (lib,"Winmm.lib")然后在所需要播放音频的响应函数中加入PlaySound(MAKEINTRESOURCE(IDR_BWAVE),AfxGetResou
2015-07-30 17:43:57 1128
原创 VC学习笔记5图像与文本
GDI概述:图形设备接口,windows操作系统提供的一组函数,为了能够在窗口中绘制各种图形信息。下面创建MFC单文档程序要想在视图中显示文字在void CWdView::OnDraw(CDC* pDC)中加入pDC->TextOut(10,10,"hello!"); //10,10为坐标如果想要设置字体呢,可以在前面加上CFont font; //CFon
2015-07-30 15:38:41 830
原创 VC学习笔记4状态栏
1.状态栏在对话框类中定义状态栏CStatusBar m_statusbar;在OnInitDialog()方法中UINT array[4]; //定义数组保存状态栏ID号for(i=0 to 3)array[i]=1001+i; //此处ID号从1001向上加m_statusbar.Create(this); //创建状态栏m_statusbar.SetInd
2015-07-30 13:42:19 541
原创 VC学习笔记2文档视图操作
下面以一个应用为例说明该操作:应用:画线,可以选择先粗细和颜色首先我创建一个名字为wd的单文档MFC工程1.在wdDoc.h中定义线的结构体:struct CLine{ CPoint start; //起始点坐标 CPoint end; //结束点坐标 COLORREF color; //线条颜色 int thick; //粗细 int style; //线条
2015-07-30 00:45:14 676
原创 VC学习笔记1对话框应用程序设计
在VC++6.0环境中创建MFC工程创建,调用新对话框:在资源试图Dialog中右键增加新对话框,打开类向导(ctrl+w)会弹出是否加入新的对话框类,选择加入.然后你该输入类名了,注意规范,类以C开头,如类名:Cxx 这个时候点确定时系统会自动生成xx.h的头文件对话框可以分为模态对话框和非模态对话框两大类。区别是:在模态对话框关闭之前,用户不能再进行其他操作,而非模态
2015-07-29 22:27:04 1129
原创 win32编成入门-位图
由于我需要做个显示二值化摄像头图像的上位机程序,因此用到了VC++中的位图,下面是这样使用的:static BITMAP bitmap={0,24,8,4,1,1}; //定义位图,这个BITMAP是一个位图的数据结构typedef struct tagBITMAP { LONG bmType; //类型,因为只传二值化图像,所以这里初始化1 L
2015-07-25 13:20:24 1603
原创 win32编程入门-子窗口控件
按钮类:首先定义窗口数据类型:static HWND hwndbutton;在winpro中:case WM_CREATE: hwndbutton=CreateWindow(TEXT("button"), //类名称 TEXT("BUTTON"), //窗口文本 BS_PUSHBUTTON|W
2015-07-24 18:25:11 932
原创 win32编程入门-定时器
case WM_CREATE: SetTimer(hWnd,1,1000,NULL); break;在窗口创建过程中定义定时器,设置编号1,定时1000毫秒,这个1000ms并不准确case WM_TIMER: switch(wParam) { case 1: aa++; InvalidateRect(hWnd,NULL,TRUE); break; } break
2015-07-24 16:17:28 1035
原创 win32编程键盘与鼠标
case WM_CHAR: switch(wParam) { case 'a': aa++; InvalidateRect(hWnd,NULL,TRUE); } break;当接收到字符,如果是a,进行操作,如果不是字符,标识用虚拟键盘,如空格是VK_SPACE。当敲击键盘a时依次产生3个消息:WM_KEYDOWNWM_
2015-07-24 15:57:07 1605
原创 win32绘图基础
在WndPro中的操作LRESULT CALLBACK WndProc(HWND hWnd, UINT message, WPARAM wParam, LPARAM lParam){ int wmId, wmEvent; PAINTSTRUCT ps; HDC hdc; TCHAR szHello[MAX_LOADSTRING]; LoadString(hInst, IDS_H
2015-07-24 15:16:11 862
原创 hello-win程序入门win32基本窗口框架全解析
在VC++6.0环境中创建win32程序选择第三个这时可以运行看到hello world了。程序解析:#define MAX_LOADSTRING 100 \\定义最大字长HINSTANCE hInst; \\当前进程资源的句柄 TCHAR szTitle[MAX_LOADSTRING]; \\窗口上方显示的标题 TCHAR szWind
2015-07-24 11:26:53 3583
原创 RLE行程长度压缩算法C版本
自己用c写了个rle压缩编码算法,代码写得不那么简洁,但是基本功能是实现的,用C写能更好地兼容嵌入式/* 行程压缩算法V1.0 made by xyt 2015/7/4*/#ifndef _RLE_H#define _RLE_H#includeusing namespace std;//判断是否三个相同值bo
2015-07-08 16:22:08 3934 8
原创 DCT离散余弦变换C版本
#include#includeusing namespace std;#define PI 3.14159265354#define DCT_SIZE 8float DCT_Mat[DCT_SIZE][DCT_SIZE];float DctMap[DCT_SIZE][DCT_SIZE]={ 130,130,130,129,134,133,129,130, 130
2015-07-08 16:16:01 2308
原创 DFT离散傅立叶变换C++实现
DFT的执行效率是O(n^2),FFT为O(log2n),但是它对点数没有限制。/* 离散傅立叶算法V1.0 含有:DFT,IDFT made by xyt 2015/7/5*/#ifndef _DFT_H#define _DFT_H#include#includeusing namespace std;#define PI 3
2015-07-08 16:11:37 9551
原创 FFT快速傅立叶算法纯C语言版本
快速离散傅立叶变换FFT利用DFT计算的对称性实现的,具体的介绍网上一大堆。这次自己写了个定点FFT头文件,直接用C语言写的很容易移植。/* 快速离散傅立叶算法V1.0 含有:FFT,IFFT made by xyt 2015/7/8 C语言*/#ifndef _FFT_H#define _FFT_H#include#define
2015-07-08 16:03:33 7263
原创 LC谐振回路简要
标准并联LC回路由无损耗电感L、电容C及电导G=1/R并联组成,并由电流源Is激励。电抗 Y(w)=G+jwC+1/jwL当jwC+1/jwL=0时 w=w0=1/sqrt(LC)参数p=w0*L=1/(w0*C)回路品质因数Q=R/p回路输出V(w)=Is/Y(w) 回路选频特性:S=V(w)/V(w0) 当dw很小时S=1/sqrt(1+(Q*2*dw/w0...
2015-07-01 13:30:19 3403
原创 通信系统调制解调基本原理
普通调幅AM: 设载频信号为 vc(t)=Vcm*cos(wc*t)调制信号为单音音频信号 vo(t)=Vom*cos(wo*t)且wc>>wo , Vcm>Wom现在用调制信号vo(t)控制载波幅度,使载波幅度按调制信号规律变化即 Vcm(t)=Vcm+ka*vo(t)=Vcm+ka*Vom*cos(wo*t)=Vcm(1+ma*cos(wo*t))...
2015-07-01 02:24:53 17785
原创 包络检波概要
普通条幅波AM可以用包络检波来得到中频信号下面是包络检波电路:注意:上图电路中经推算输入电阻约等于R/2 (左端电压除以流经二极管的电流)基本原理:左端输入电压正向作用于二极管时,电流经过电阻R流入地(一切正常)同时R两端的电压又给电容器充电,当反向电压作用于二极管时,电流不能通过,此时已充满电的电容开始放电了,放电的速度和时间常数=R*C有关,当R*C远大于高频频率的倒数时(就是...
2015-07-01 01:05:43 47900 5
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人